Graphical user interface for a device having multiple input and output nodes

ABSTRACT

A graphical user interface (GUI) is described. The GUI includes first GUI elements that provide a visual representation of the nodes of an audio/video device. In response to user input, a signal is caused to be routed between nodes by manipulating circuitry within the audio/video device. Second GUI elements provide a visual representation of the signals being routed within the electronic device between pairs of first GUI elements (e.g., between nodes). As a result, the user can readily understand which nodes are connected to each other. Thus, for example, a user can easily visualize which source node is providing input to a target node and, by selecting the appropriate GUI elements, can just as easily switch from one source to another or from one target to another.

RELATED UNITED STATES PATENT APPLICATION

This application is a continuation of co-pending, commonly-owned U.S.patent application Ser. No. 10/095,947 by R. Iwamura, filed on Mar. 11,2002, entitled “A Graphical User Interface for a Device Having MultipleInput and Output Nodes,” assigned to the assignee of the presentinvention, and hereby incorporated by reference in its entirety.

TECHNICAL FIELD

The present invention relates to the field of graphical user interfaces.In particular, the present invention pertains to a graphical userinterface for visualizing and controlling signal flows within a device.

BACKGROUND ART

Inputs to a television conventionally include signals received via anantenna, a satellite system, or cable. Some televisions are equippedwith more than one tuner, allowing a viewer to select from more than onesource. In addition, televisions are typically equipped with severalinput (or source) nodes, allowing the television to receive inputs frommultiple devices such as video cassette recorders (VCRs), digital videodisk (DVD) players, and even personal computers. Thus, contemporarytelevisions have the capability to receive inputs from multiple sourcesand from many different types of peripheral devices.

Similarly, contemporary televisions are equipped with multiple output(or target) nodes to which a signal from a source node can be directed.These target nodes include peripheral devices (such as VCRs and alsodigital recording devices) that can be used to record an input signal.The television's display device (e.g., the television screen) can alsobe thought of as a target node.

The modern viewer is thus confronted with a somewhat bewildering numberof choices regarding which input is to be viewed and/or recorded, andwhich target node is to be used for viewing and/or recording. Typically,the viewer attempts to make his or her selections using a remote control(or remote commander) in conjunction with some type of user interfacethat is displayed on the television's screen.

However, a problem with prior art user interfaces is that only thesource name is presented to the user. In addition, the source name istypically a relatively obscure name, such as “Video 1” or “S-video,”that does not provide an indication of the type of device that isconnected with the input node.

Consider, for example, a situation in which a first tuner is receiving abroadcast program and the user wishes to send this to a VCR forrecording. Separately, two videos are being displayed on the televisionscreen—one video from “Video 1” which may be a DVD player, the otherfrom a second tuner—and the user wishes to select one of these videosfor viewing. Using a conventional user interface, selecting the variousinputs and directing them to the correct target can be difficult. Ingeneral, the user would likely need to know how the television andperipheral devices were set up (that is, which input node is connectedwith which peripheral device) in order to identify the correct source.In addition, the user would need to know how the VCR is identified andthat the DVD player is identified as “Video 1.”

In summary, while television designs have advanced to where inputs canbe received from multiple sources and to where those inputs can bedirected to a variety of target nodes, prior art user interfaces havenot kept pace. Prior art techniques for managing connections betweensource and target nodes are generally unwieldy when applied totelevisions that provide users with a multiplicity of choices.

SUMMARY OF THE INVENTION

Therefore, what is needed is a system and/or method that can help userscontrol a device (such as a television or set top box) that has multiplesource nodes and multiple target nodes. In particular, what is needed isa system and/or method that can help users direct a signal from adesired source node to a desired target node.

Embodiments of the present invention pertain to graphical userinterfaces (GUIs) that can satisfy these needs. The GUIs provide avisualization of the video and audio signal flows inside a television orset top box so that a user can easily control the signals, routing themfrom a selected source node to a selected target node. The features ofthe present invention can be extended to other types of devices havingmultiple source and target nodes (generally speaking, an audio/videodevice).

In one embodiment, the GUI includes first GUI elements that provide avisual representation of the nodes of an audio/video (A/V) device. Inresponse to user input, a signal is caused to be routed between nodes bymanipulating circuitry within the A/V device. Second GUI elementsprovide a visual representation of the signals being routed within theA/V device between pairs of first GUI elements (e.g., between a sourceand a target node).

In its various embodiments, the GUI can be implemented in software andthus can be incorporated into conventional or legacy devices; that is,embodiments of the present invention can be implemented without thenecessity of hardware modifications.

According to the present invention, a user can readily understand whichnodes of an A/V device are connected to each other. Thus, for example, auser can easily visualize which source node is providing input to atarget node and, by selecting the appropriate GUI elements, can just aseasily switch from one source to another or from one target to another.These and other objects and advantages of the present invention will nodoubt become obvious to those of ordinary skill in the art after havingread the following detailed description of the preferred embodimentswhich are illustrated in the various drawing figures.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and form a part ofthis specification, illustrate embodiments of the invention and,together with the description, serve to explain the principles of theinvention:

FIG. 1 is a block diagram of one embodiment of a video system upon whichembodiments of the present invention may be implemented.

FIG. 2 is a block diagram of one embodiment of an audio system uponwhich embodiments of the present invention may be implemented.

FIG. 3 illustrates one embodiment of a graphical user interface inaccordance with the present invention.

FIG. 4 illustrates the graphical user interface of FIG. 3 in practiceaccording to one embodiment of the present invention.

FIG. 5 illustrates another embodiment of a graphical user interface inaccordance with the present invention.

FIG. 6 illustrates the graphical user interface of FIG. 5 in practiceaccording to one embodiment of the present invention.

FIG. 7 is a flowchart of a process for controlling signals in a deviceaccording to one embodiment of the present invention.

BEST MODE FOR CARRYING OUT THE INVENTION

Reference will now be made in detail to the preferred embodiments of theinvention, examples of which are illustrated in the accompanyingdrawings. While the invention is described in conjunction with thepreferred embodiments, it is understood that they are not intended tolimit the invention to these embodiments. On the contrary, the inventionis intended to cover alternatives, modifications and equivalents, whichmay be included within the spirit and scope of the invention as definedby the appended claims. Furthermore, in the following detaileddescription of the present invention, numerous specific details are setforth in order to provide a thorough understanding of the presentinvention. However, it will be obvious to one of ordinary skill in theart that the present invention may be practiced without these specificdetails. In other instances, well known methods, procedures, components,and circuits have not been described in detail as not to unnecessarilyobscure aspects of the present invention.

Some portions of the detailed descriptions which follow are presented interms of procedures, logic blocks, processing, and other symbolicrepresentations of operations on data bits within a computer systemmemory. These descriptions and representations are the means used bythose skilled in the data processing arts to most effectively convey thesubstance of their work to others skilled in the art. In the presentapplication, a procedure, logic block, process, or the like, isconceived to be a self-consistent sequence of steps or instructionsleading to a desired result. The steps are those requiring physicalmanipulations of physical quantities. Usually, although not necessarily,these quantities take the form of electrical or magnetic signals capableof being stored, transferred, combined, compared, and otherwisemanipulated in a computer system. It has proven convenient at times,principally for reasons of common usage, to refer to these signals asbits, values, elements, symbols, characters, fragments, pixels, or thelike.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the followingdiscussions, it is appreciated that throughout the present invention,discussions utilizing terms such as “selecting,” “routing,” “rendering,”“manipulating,” “detecting,” “generating” or the like, refer to actionsand processes of a computer system or similar electronic computingdevice. The computer system or similar electronic computing devicemanipulates and transforms data represented as physical (electronic)quantities within the computer system memories, registers or other suchinformation storage, transmission or display devices. The presentinvention is well suited to the use of other computer systems, such as,for example, optical and mechanical computers.

The present invention is discussed in the general context of atelevision or set top box. However, it is appreciated that the featuresof the present invention can be used with other types of devices havingmultiple input (source) nodes and multiple destination (target oroutput) nodes. These devices are generally referred to herein asaudio/video devices, and they typically include a video system formanaging video signals and an audio system for managing audio signalsassociated with the video signals.

FIG. 1 is a block diagram of one embodiment of a video system 110 uponwhich embodiments of the present invention may be implemented.Embodiments of the present invention can be implemented in software; forthose embodiments, video system 110 simply illustrates an exemplaryplatform to which embodiments of the present invention can be applied.In one embodiment, video system 110 is implemented in a television.Alternatively, aspects of video system 110 may be implemented in aperipheral device, such as a set top box, that is coupled to atelevision. In general, video system 110 shows various functionalelements that can be either included in a single device or distributedamong multiple devices that are coupled to one another. It isappreciated that alternatives to the elements of video display systemmay be used; for example, different types of display devices other thancathode ray tubes (CRTs) may be used. It is also appreciated that notall of the elements of video system 110 need be present; for example,video system 110 may include a single tuner instead of multiple tuners.

In the embodiment of FIG. 1, signals from an antenna, a cable, asatellite broadcast, or the like, are received by tuner/IF (interface) 1and by another tuner/IF 2. Detector blocks (DET) 3 and 4 separate thesesignals into video signals and audio signals (the audio signals aredesignated A1 and A2, and are discussed further in conjunction with FIG.2 below). In one embodiment, the video signals are NTSC (NationalTelevision Standards Committee) signals. In the present embodiment, thevideo signals go to switches 5 and 6.

Continuing with reference to FIG. 1, video system 110 also includesmultiple video input ports 31 and 32 (video in 1 and video in 2). Thevideo input ports 31 and 32 are for coupling video system 110 toperipheral devices such as VCRs, DVD players, personal computers and thelike. Video signals received via ports 31 and 32 also go to switches 5and 6. It is appreciated that some number of video input ports otherthan two may be used with the present invention.

In the present embodiment, the switches 5 and 6 are used for selecting asignal from tuner I/F 1, tuner I/F 2, video input port 31 or video inputport 32. The selected signals are converted from analog to digital inanalog-to-digital (A/D) converters 7 and 8 and sent to video controller9. Graphics generated by graphics engine 11 are mixed with therespective digital signals by video controller 9. Video controller 9 canalso reduce the video signals to smaller sizes.

The signals from video controller 9 are converted from digital to analogin digital-to-analog (D/A) converter 13. The resulting analog signalsare sent to CRT driver 14 and displayed on CRT 15. Switch 16 selects avideo signal from switch 5 or from switch 6, and switch 17 selects avideo signal from DET 3 or 4. The signal selected by switch 16 is sentto the video output port 35, and the signal selected by switch 17 issent to the television (TV) output port 36.

Thus, in the present embodiment, tuner I/F 1, tuner I/F 2, and videoinput ports 31 and 32 represent source nodes of the video system 110,while CRT 15, video output port 35, and TV output port 36 representtarget nodes of video system 110. It is appreciated that more than orless than three target nodes may be used with the present invention.

In the present embodiment, video system 110 is under control of aprocessor (CPU) 10. User interface (I/F) 12 receives a command from aremote control (remote commander 50) that is under control of a user.The command is forwarded to CPU 10, which controls the tuners andswitches of video system 110 according to the command. Softwareincluding program code and instructions for CPU 10 are stored in memory(Mem) 20.

FIG. 2 is a block diagram of one embodiment of an audio system 200 uponwhich embodiments of the present invention may be implemented. In thepresent embodiment, the audio signals A1 and A2 (see also FIG. 1 above)are received at switches 20 and 21. The switches 20 and 21 work togetherwith switches 5 and 6 of FIG. 1. Similarly, switches 23 and 24 worktogether with switches 16 and 17 of FIG. 1. Thus, for example, if switch5 is set to receive the video signal from tuner I/F 1, then switch 20will be set to receive audio signal A1, which is also from tuner I/F 1.Audio system 200 also includes audio input ports 33 and 34 (audio in 1and audio in 2), which correspond to the video input ports 31 and 32.

Continuing with reference to FIG. 2, switch 22 selects either the outputof switch 20 or the output of switch 21. The selected audio signal isamplified in audio amplifier 25 and sent to loudspeaker 26. Note that,although it is possible to simultaneously display two videos, two audiosignals cannot be simultaneously played, so that one of the audiosignals A1 or A2 needs to be selected.

FIG. 3 illustrates one embodiment of a graphical user interface (GUI)300 in accordance with the present invention. The implementation of GUI300 is described in the context of video system 110 and audio system 200of FIGS. 1 and 2, respectively; however, as will be seen, the featuresof GUI 300 can be implemented on different types of systems. Forexample, GUI 300 can be readily extrapolated to an application that hassome number of tuners other than two, or that has some number of videoinput ports other than two (and hence may include some number ofperipheral devices other than two).

In the present embodiment, GUI 300 is implemented in software ascomputer-readable and computer-executable instructions executed by aprocessor (e.g., CPU 10 of FIG. 1). The computer-readable andcomputer-executable instructions may reside in memory 20 of FIG. 1.However, it is understood that the computer-readable andcomputer-executable instructions may instead reside in a memory deviceand/or may be executed by a processor separate from, but coupled to,video system 110 of FIG. 1.

With reference to FIG. 3 and also to FIG. 1, in the present embodiment,GUI 300 is essentially a topographical representation of video system110; that is, GUI 300 essentially renders a visual representation ofvideo system 110 that is very similar to the actual configuration ofvideo system 110.

In the present embodiment, GUI 300 includes a set of GUI elements (301,302, 303, 304, 305, 306, 309, 312, 313 and 315) that provide a visualrepresentation of the various source nodes and target nodes of videosystem 110. For example, GUI element (nodal element) 301 indicates tunerI/F 1 of FIG. 1. In this embodiment, GUI 300 also includes a set of GUIelements (exemplified by element 330) that provide a visualrepresentation of the circuitry of video system 110. For example, GUIelement 330 represents the circuitry downstream of switch 6 of FIG. 1.Furthermore, according to the present embodiment, GUI 300 includes a setof GUI elements (307, 308 and 310) that provide a visual representationof the switches of video system 110. Thus, for example, GUI element 307represents switch 17 of FIG. 1.

Referring to FIGS. 1 and 3, the elements of GUI 300 are selected usingremote commander 50. This can be accomplished in several different ways.For example, using a button on remote commander 50, GUI 300 can beautomatically summoned and displayed on CRT 15. One of the GUI elements(e.g., element 303) is selected and highlighted (that is, the GUIelement is active). When active, the GUI element can be manipulated bythe user, as described further below. Should the user want to manipulatea different GUI element, the user can select (highlight) that element bymoving to that GUI element using remote commander 50. For example, bydepressing a button on remote commander 50, the user can scroll throughthe various GUI elements using a round-robin type of approach.Alternatively, GUI 300 can include an interface that allows the user todirectly select a particular GUI element.

Continuing with reference to FIGS. 1 and 3, the use of GUI 300 isdescribed by way of example. Upon selection of GUI element 301(representing tuner I/F 1), pop-up menu 350 appears, as exemplified inFIG. 4. Note that, prior to user selection of GUI element 301, thiselement would identify by name the input node with which it isassociated; that is, GUI element 301 would include the name “Tuner 1” inmuch the same way GUI element 302 includes the name “Video 2.”

With further reference to FIG. 4, pop-up menu 350 shows the programsbeing received via tuner I/F 1 of FIG. 1; that is, pop-up menu shows thechannels and/or programs being received via cable, an antenna, asatellite system, or the like. It is appreciated that, in the exampleillustrated by FIG. 4, only a partial list of channels/programs isshown; alternatively, a complete list of available channels/programs canbe provided by pop-up menu 350. Upon selection by the user of one of thechannels or programs, pop-up menu 350 disappears from view.

With reference now to FIGS. 1 and 3, the user makes a selection of oneof the channels from tuner I/F 1 (channel 100 is selected as anexample). According to the present embodiment, the channel selected bythe user is now indicated in GUI element 301. In a similar manner, theuser can select a channel from tuner I/F 2, in which case GUI element304 would indicate the selected channel (channel 103 is selected as anexample). In the present embodiment, in order to direct the variousinputs to the desired target nodes, the user next selects andmanipulates the various GUI elements representing the switches. In theexample of FIG. 3, the user can select GUI element 307 to direct thesignal from tuner I/F 1 (represented by GUI element 301) to TV outputport 36 (represented by GUI element 309). In the present embodiment,this is accomplished by the user highlighting (selecting) GUI element307 and then using a button on remote commander 50 to cause GUI element307 to toggle back and forth between its possible positions. The usersimilarly selects and manipulates the other GUI elements to route thesignals between source and destination nodes as desired.

In the present embodiment, as the user selects and manipulates thevarious GUI elements as described above, CPU 10 sets the switches invideo system 110 in response. Consider the example of FIG. 3. With theswitches set as shown, CPU 10 sets the switches in video system 110 asfollows:

-   -   Switch 5->position (b), input from Video 1 (31);    -   Switch 6->position (a), input from tuner I/F 2 (DET 4);    -   Switch 16->position (a), input from switch 5; and    -   Switch 17->position (a), input from tuner I/F 1 (DET 3).

With reference to FIG. 2, based on the example of FIG. 3, CPU sets theswitches in audio system 200 as follows:

-   -   Switch 20->position (b), input from Audio 1 (33);    -   Switch 21->position (a), input from tuner I/F 2 (A2);    -   Switch 22->position (a), input from switch 20;    -   Switch 23->position (a), input from switch 20; and    -   Switch 24->position (a), input from tuner I/F 1 (A1).

According to the present embodiment of the present invention, continuingwith the example illustrated by FIG. 3, the video signal from videoinput port 31 (Video 1, represented as GUI element 303) is displayed inGUI element 313. Had the user set GUI element 308 to the positioncorresponding to GUI element 301, for example, then GUI element 313would instead display the video signal from tuner I/F 1 (e.g., channel100). In a similar manner, the video signal from tuner I/F 2 (e.g.,channel 103) is displayed using GUI element 315.

In the present embodiment, GUI element 314 indicates which input node isproviding the audio signal currently in use. GUI element 314 functionsessentially as a toggle that can be moved from the proximity of GUIelement 313 to the proximity of GUI element 315, and back again. In theexample of FIG. 3, by its proximity to GUI element 313, GUI element 314indicates that the audio signal associated with the video signalidentified by GUI element 313 (e.g., the audio signal from Video 1) isbeing used.

GUI element 314 can also be used to indicate which video signal isselected for viewing. That is, GUI elements 313 and 315 provide apreview of some of the options available for viewing, and GUI element314 can be used to indicate which option has been selected.Alternatively, another GUI element can be used to indicate the selectedoption. It is understood that, although GUI element 314 is depicted as aloudspeaker, a different image or icon can be used.

Continuing with reference to FIGS. 1 and 3, in one embodiment, the GUIelements representing the circuitry of video system 110 (as exemplifiedby GUI element 330) can be animated to indicate signal flows withinvideo system 110. In one embodiment, flashing arrows can be used toindicate the various signal flows. For example, GUI element 330 can beanimated using flashing arrows to show the signal flow from tuner I/F 2(GUI element 314) to GUI element 315.

In another embodiment, user-friendly names for the source and targetnodes of GUI 300 can be defined by the user and these user-friendlynames can be included in the appropriate GUI element. For example,instead of identifying GUI element 303 as “Video 1,” a user can insteadassign the name “DVD player” to GUI element 303. Alternatively, the GUIelement can incorporate an image recognizable as a DVD player, forexample.

As described above, the number of GUI elements corresponding to thesource and target nodes can vary according to the number of peripheraldevices coupled to video system 110. In one embodiment, peripheraldevices coupled to video system 110 are automatically detected, and GUIelements for each of the detected devices are automatically generatedand rendered. In another embodiment, when a node is not connected to adevice (e.g., if video input port 32 is not being used), then a GUIelement for that node is not rendered, or is grayed out.

Thus, in its various embodiments, the present invention provides auser-friendly GUI that allows a user to readily visualize which sourcenodes are coupled to which target nodes. Embodiments of the presentinvention also provide a GUI that enables a user to readily selectdifferent source and/or target nodes, and to just as readily switch fromone source to another and/or from one target to another. Thus, thepresent invention provides a ready means for users to control the audioand video signal flows within a television, set top box, or the like.The present invention is flexible enough to be used for a range ofdevices that have varying numbers of input and target nodes. Embodimentsof the present invention can be implemented in software and, as such,the present invention is also well-suited to different hardwareconfigurations, including those used by legacy devices.

FIG. 5 illustrates another embodiment of a graphical user interface 400in accordance with the present invention. In the present embodiment, GUI400 is implemented in software as computer-readable andcomputer-executable instructions executed by a processor (e.g., CPU 10of FIG. 1). The computer-readable and computer-executable instructionsmay reside in memory 20 of FIG. 1. However, it is understood that thecomputer-readable and computer-executable instructions may insteadreside in a memory device and/or may be executed by a processor separatefrom, but coupled to, video system 110 of FIG. 1.

With reference to FIG. 5, in the present embodiment, GUI 400 provides arepresentation of the signal flows between the various elements of avideo system such as video system 110 of FIG. 1. In the embodiment ofFIG. 5, with reference also to FIG. 1, GUI 400 includes GUI element 401representing tuner I/F 1, GUI element 402 representing tuner I/F 2, andGUI elements 405 and 406, representing video input nodes 31 and 32,respectively. Similarly, GUI element 409 represents TV output port 36and GUI element 410 represents video output port 35. In this embodiment,GUI element 413 represents switch 5 and GUI element 415 representsswitch 6.

In the present embodiment, GUI 400 is used as follows. By selecting(highlighting) a GUI element, a pop-up menu appears, exemplified bypop-up menu 450 of FIG. 6. The items in the pop-up menu include a listof video signals that are available at the node corresponding to theselected GUI element. Thus, for example, pop-up menu 450 lists theinputs to switch 5 of FIG. 1: tuner I/F 1 (Tuner 1), video input port 31(Video 1), and video input port 32 (Video 2). Similarly, continuing withreference to FIGS. 1 and 6, a pop-up menu for GUI element 415 wouldcontain the inputs to switch 6 (tuner I/F 2, video input port 31, andvideo input port 32), a pop-up menu for GUI element 409 would containthe inputs to switch 17 (tuner I/F 1 and tuner I/F 2), and a pop-up menufor GUI element 410 would contain the inputs to either switch 5 orswitch 6, depending on the position of switch 16. In the presentembodiment, the user sets the positions of the various switches byselecting from the choices provided by GUI elements 409, 410, 413 and415. Thus, for example, if the user selects Tuner 1 from pop-up menu450, then switch 5 is set to position (a) by CPU 10.

With the switches of video system 110 (FIG. 1) set as in the example ofFIG. 3, GUI 400 will appear as shown in FIG. 5. According to thisexample, with reference to FIGS. 1 and 5, the output of tuner I/F 1(represented by GUI element 401) will go to switch 17 (represented byGUI element 409). The output of tuner I/F 2 (GUI element 402) will go toswitch 6 (GUI element 415). The signal from video input node 31 (GUIelement 405) goes to switch 5 (GUI element 413) and switch 16 (GUIelement 410). In one embodiment, the signal flows between the source andtarget nodes are illustrated in GUI 400 by arrows of different colors,so that the signal flows may be readily distinguishable from oneanother. A GUI element 414, illustrated as a loudspeaker icon placed inproximity to one of the GUI elements, is used to show which audio signalis being used; in the example of FIG. 5, the proximity of GUI element414 to GUI element 413 indicates that the audio from video input node 31(Video 1) is currently being used. GUI element 414 functions as a toggleas described above. It is appreciated that other types of GUI elementsmay be used in accordance with the present invention.

In contrast to GUI 300 of FIG. 3, GUI 400 does not include GUI elementsfor the circuitry and for the switches, and only shows the signal flowsbetween GUI elements. As such, GUI 400 is readily scalable to larger ormore complicated video systems that may use additional switches.

FIG. 7 is a flowchart 700 of a process for controlling signals accordingto one embodiment of the present invention. Flowchart 700 includesprocesses of the present invention that, in one embodiment, are carriedout by a processor (e.g. processor 10 of FIG. 1) under the control ofcomputer-readable and computer-executable instructions. Thecomputer-readable and computer-executable instructions reside, forexample, in data storage features such as computer usable volatilememory, computer usable non-volatile memory, and/or a data storagedevice (e.g., memory 20 of FIG. 1).

In step 710 of FIG. 7, a GUI representing the source and target nodes ofan audio/video device is generated. In one embodiment, the GUI isexemplified by GUI 300 of FIG. 3, and in another embodiment, the GUI isexemplified by GUI 400 of FIG. 5.

In step 720 of FIG. 7, in response to user input, a signal is caused tobe routed between a first node and a second node. In the embodimentexemplified by FIG. 3, the user manipulates the various GUI elementsrepresenting the switches within an audio/video device; in response tothe user input, the appropriate switches of the audio/video device areautomatically set so that a signal is routed between the first andsecond nodes. In the embodiment exemplified by FIG. 5, the user selectsa particular GUI element and is presented with a list of signals beingprovided to the node corresponding to the selected GUI element. That is,upon user selection of a target node, a list of source nodes providinginput to that target node is displayed. In response to user selection ofone of the source nodes (or one of the signals), the appropriateswitches are automatically set so that a signal is routed between thesource and target nodes.

The preferred embodiments of the present invention, a graphical userinterface for a device having multiple input and output nodes, are thusdescribed.

While the present invention has been described in particularembodiments, it should be appreciated that the present invention shouldnot be construed as limited by such embodiments, but rather construedaccording to the following claims.

What is claimed is:
 1. A method of controlling signals within anaudio/video device, said method comprising: generating a displaycomprising a graphical user interface (GUI) comprising a plurality ofdisplayed GUI elements that represent source nodes and target nodes andconnection paths between said source nodes and said target nodes,wherein said plurality of displayed GUI elements includes a first subsetfor said source nodes that are coupled to peripheral devices and whereinsaid plurality of displayed GUI elements also includes a second subsetfor said target nodes that are coupled to said peripheral devices,wherein said plurality of displayed GUI elements also includes a subsetof said connection paths comprising connection paths that are possiblebetween said first subset of source nodes and said second subset oftarget nodes but not including connection paths between said sourcenodes and said target nodes that are not possible; and routing a signalbetween a first node and a second node by manipulating circuitry withinsaid audio/video device in response to user input, wherein said GUIfurther comprises a first GUI element useful for displaying a firstvideo signal associated with a first source node of said source nodes,wherein said first video signal is displayed in said first GUI element.2. The method of claim 1 further comprising automatically detectingperipheral devices coupled to source nodes and target nodes of saidaudio/video device.
 3. The method of claim 1 wherein said GUI comprisesa topographical rendering of said first and second subsets of nodes andsaid subset of connection paths.
 4. The method of claim 1 wherein saidGUI further comprises a representation of said circuitry.
 5. The methodof claim 1 wherein said circuitry comprises switches, wherein said userinput further comprises manipulation of GUI elements representing saidswitches, wherein said GUI elements representing said switches include asecond GUI element, wherein said second GUI element is movable from afirst position to a second position, wherein in said first position saidsecond GUI element is connected to a GUI element representing said firstsource node, and wherein in said second position said second GUI elementis connected to a GUI element representing a second source node.
 6. Themethod of claim 1 comprising: detecting another device coupled to saidaudio/video device; and rendering a GUI element for each devicedetected.
 7. The method of claim 1 wherein a GUI element comprises aname for another device coupled to said audio/video device.
 8. Themethod of claim 1 wherein said method comprises rendering on said GUI avisual representation of said signal routed within said audio/videodevice between said first node and said second node.
 9. A method ofcontrolling signals within an audio/video device, said methodcomprising: generating a display comprising a graphical user interface(GUI) comprising a plurality of displayed GUI elements that representsource nodes and target nodes and connection paths between said sourcenodes and said target nodes, wherein said plurality of displayed GUIelements includes a first subset for said source nodes that are coupledto peripheral devices and wherein said plurality of displayed GUIelements also includes a second subset for said target nodes that arecoupled to said peripheral devices, wherein said plurality of displayedGUI elements also includes a subset of said connection paths comprisingconnection paths that are possible between said first subset of sourcenodes and said second subset of target nodes but not includingconnection paths between said source nodes and said target nodes thatare not possible; and routing a signal between a first node and a secondnode by manipulating circuitry within said audio/video device inresponse to user input, wherein said GUI comprises a second GUI elementuseful for displaying a second video signal associated with a secondsource node of said source nodes, wherein said second video signal isdisplayed in said second GUI element.
 10. The method of claim 9 whereinaudio content associated with one of said first and second source nodesis selected, wherein said GUI comprises a GUI element indicating whichof said first and second source nodes is associated with said audiocontent.
 11. The method of claim 9 comprising: receiving user inputcomprising a selection of a GUI element; and listing input signals beingprovided to a node corresponding to said GUI element.
 12. A displaydevice having rendered thereon a graphical user interface (GUI), saidGUI comprising: first GUI elements providing a visual representation ofsource nodes and target nodes of an audio/video device and connectionpaths between said source nodes and said target nodes, wherein saidfirst GUI elements include a first subset consisting of GUI elements forsource nodes that are coupled to peripheral devices and wherein saidfirst GUI elements also include a second subset consisting of GUIelements for target nodes that are coupled to said peripheral devices,wherein said first GUI elements also include a subset of said connectionpaths consisting of connections in said audio/video device that arepossible between said first subset of said source nodes and said secondsubset of said target nodes but not connections in said audio/videodevice that are not possible; second GUI elements providing a visualrepresentation of signals routed within said audio/video device betweensaid first and second nodes along one of said connection paths; and athird GUI element useful for displaying a first video signal associatedwith a first source node of said source nodes, wherein said first videosignal is displayable in said third GUI element.
 13. The display deviceof claim 12 wherein said first GUI elements comprise a topographicalrendering of said first subset of said source nodes, said second subsetof said target nodes and subset of said connection paths.
 14. Thedisplay device of claim 12 wherein said second GUI elements also providea visual representation of said circuitry.
 15. The display device ofclaim 14 wherein said second GUI elements also provide a visualrepresentation of switches, wherein manipulation of said second GUIelements causes said signals to be routed between said first and secondnodes, wherein said second GUI elements representing said switchesinclude a switch-like GUI element, wherein said switch-like GUI elementis movable from a first position to a second position, wherein in saidfirst position said switch-like GUI element is connected to a GUIelement representing said first source node, and wherein in said secondposition said switch-like GUI element is connected to a GUI elementrepresenting a second source node.
 16. The display device of claim 12wherein said audio/video device is operable for detecting another devicecoupled to said audio/video device, wherein a first GUI element isrendered for each device detected.
 17. The display device of claim 12wherein said GUI further comprises a fourth GUI element useful fordisplaying a second video signal associated with a second source node ofsaid source nodes, said third and fourth GUI elements displayablesimultaneously, wherein said second video signal is displayable in saidfourth GUI element.
 18. The display device of claim 17 wherein audiocontent associated with one of said first and second source nodes isselected, wherein said GUI comprises a fifth GUI element indicatingwhich of said first and second source nodes is associated with saidaudio content.
 19. The display device of claim 12 wherein said first GUIelements comprise a list of input signals being provided to a respectivenode, wherein said list is displayed in response to user selection of aGUI element corresponding to said respective node.
 20. An audio/videodevice comprising: internal circuitry; a display device coupled to saidinternal circuitry; a first set of nodes coupled to said internalcircuitry, said first set of nodes couplable to sources of videocontent; a second set of nodes coupled to said internal circuitry, saidsecond set of nodes providing a destination for said video content;wherein a graphical user interface (GUI) is generated on said displaydevice, said GUI comprising: nodal GUI elements providing a visualrepresentation of said first set of source nodes and said second set oftarget nodes, wherein said nodal GUI elements include a first subset ofnodal GUI elements representing said source nodes that are coupled toperipheral devices and a second subset of nodal GUI elementsrepresenting said target nodes that are coupled to said peripheraldevices, wherein user input causes a signal to be routed between a firstnode selected from said first set of nodes and a second node selectedfrom said second set of nodes; and flow GUI elements providing a visualrepresentation of signals routed along connection paths between saidfirst subset of source nodes and said second subset of target nodes,wherein only those connection paths that are possible between nodal GUIelements that are members of said first and second subsets aredisplayed, but not including connection paths between said source nodesand said target nodes that are not possible; and wherein said GUIfurther comprises a first display GUI element useful for displaying afirst video signal associated with said first node, wherein said firstvideo signal is displayable in said first display GUI element.
 21. Theaudio/video device of claim 20 wherein said GUI comprises atopographical rendering of said first and said second subsets of nodalGUI elements and said subset of connection paths.
 22. The audio/videodevice of claim 20 wherein said GUI comprises: circuit GUI elementsproviding a visual representation of said internal circuitry.
 23. Theaudio/video device of claim 22 wherein said circuit GUI elementscomprise representations of switches, wherein said user input furthercomprises manipulation of said representations of said switches, whereinsaid representation of said switches includes a switch-like GUI element,wherein said switch-like GUI element is movable from a first position toa second position, wherein in said first position said switch-like GUIelement is connected to a GUI element representing a first source nodeof said first set of nodes, and wherein in said second position saidswitch-like GUI element is connected to a GUI element representing asecond source node of said second set of nodes.
 24. The audio/videodevice of claim 20, wherein said GUI further comprises a second displayGUI element useful for displaying a second video signal associated witha second one of said source nodes, said first and second display GUIelements displayable simultaneously, wherein said second video signal isdisplayable in said second display GUI element.
 25. The audio/videodevice of claim 24 wherein audio content associated with one of saidsource nodes is selected, wherein said GUI comprises an elementindicating which of said source nodes is associated with said audiocontent.
 26. The audio/video device of claim 20 wherein said nodal GUIelements comprise a list of input signals being provided to a respectivenode, wherein said list is displayed in response to user selection of anodal GUI element corresponding to said respective node.